Recently, as workstations (WS), personal computers (PC), and color printers represented by laser beam printers, ink-jet printers, and the like have prevailed, various color documents created and/or edited by application software can be printed out.
In order to easily obtain a color printout that the user wants, the following problems must be solved.
(1) A monitor such as a CRT or the like on which the user creates/edits a color document has a color reproduction range (gamut) different from that of a printer. In general, the color reproduction range of the monitor is broader than that of the printer, which cannot reproduce all colors expressed by the monitor. For this reason, a compression process (color space matching) of a color space is required, and some color space compression schemes have been proposed. However, it is difficult for the user to select an appropriate one of these schemes.
(2) In connection to (1) above, since the colors on the monitor are expressed by R, G, and B additive primaries, and those of the printers are expressed by C, M, Y, and K subtractive primaries, a color obtained by mixing a plurality of colors confirmed on the monitor may be different from that obtained by the printer.
(3) Recent printers have high resolutions (e.g., 1,200 dpi, 600 dpi), and require a print process of much higher resolution than a preview on the monitor having a resolution as low as about 72 dpi, and appropriate halftoning (binarization, multi-value conversion, quantization, and the like) corresponding to each purpose must be selected.
(4) Electrophotographic printers represented by laser beam printers often have subtly different tinctures due to aging and individual differences of their engines. Some methods of controlling tincture differences have been proposed. However, such methods are effective for given type of object (data) but may cause side effects for another type of object (data).
A color document contains various objects having different features, e.g., text, graphics, images, and the like. For example, text data includes 1-byte alphanumeric characters, 2-byte kanji characters, and the like, and image data has a two-dimensional array of pixels, and has different color information values in units of pixels. Image data is often compressed to attain high efficiency. Graphics data is expressed by lines, polygonal edges, and inner regions.
In order to realize satisfactory color reproduction in a printout, processes for solving the aforementioned problems are required in correspondence with features of individual objects. As an example of such solution, a technique for discriminating the type of object indicated by a rendering command in accordance with the format of the command is known. However, according to this technique, since all text commands issued by application software are rendered as text objects, the balance of a printout may be lost.
For example, a text command is rendered to a character background color. In this case, if all text commands are rendered as text objects, the obtained background color may not often match other background colors rendered as graphics objects. That is, since a color process and halftoning upon printing a text object are different from those upon printing a graphics object, the reproduced tinctures may look different.
When the user instructs to render text commands using a font of a minimal or maximal point size, he or she may have done so to obtain a graphics effect rather than normal legible text. Hence, it is not advisable to identify all text commands as text objects.
Character decorative lines such as an underline, strikeout line, and the like, are normally identified as graphics objects since an application independently renders their commands. For this reason, if a character decorative line designated by a text command is identified as a text object, both character decorative lines as graphics and text objects are mixed, and object handling of character decorative lines becomes inconsistent, resulting in different tinctures.